package com.csist.pojo.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.csist.easyExcel.converter.IntegerConverter;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @ClassName CompleteData
 * @Description 【自行描述】
 * @Author Yingru Yu
 * @Date 2024/6/13 16:39
 * @Version 1.0
 */

//lombok的注解可以自动生成一些代码
//     data注解包含： getter/setter/equals/hashcode/tostring
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompleteDataConverted {
    // 一级表头：基础信息
    /**
     * 序号（excel表序号）
     */
    @ExcelProperty(value = {"基础信息","序号"},converter = IntegerConverter.class)
    private Integer id;

    // 学生基本信息
    /**
     * 专修编号
     */
    @ExcelProperty(value = {"基础信息","专修编号"})
    private String studentId;
    /**
     * 学生姓名
     */
    @ExcelProperty(value = {"基础信息","学生姓名"})
    private String name;
    /**
     * 学生性别
     */
    @ExcelProperty(value = {"基础信息","性别"})
    private String gender;
    /**
     * 教务证件号(身份证号)
     */
    @ExcelProperty(value = {"基础信息","教务证件号"})
    private String credential;
    /**
     * 层次(教学背景)
     */
    @ExcelProperty(value = {"基础信息","层次"})
    private String educationBackground;
    /**
     * 学习类型（在校状态）
     */
    @ExcelProperty(value = {"基础信息","学习类型"})
    private String studentEducationState;
    /**
     * 专修年级
     */
    @ExcelProperty(value = {"基础信息","专修年级"})
    private String studentYear;
    /**
     * 报道春秋季
     */
    @ExcelProperty(value = {"基础信息","报道春秋季"})
    private String studentSeason;
    /**
     * 专修学籍专业
     */
    @ExcelProperty(value = {"基础信息","专修学籍专业"})
    private String studentSpecificationMajor;
    /**
     * 分班(班号)
     */
    @ExcelProperty(value = {"基础信息","分班"},converter = IntegerConverter.class)
    private Integer studentClass;
    /**
     * 班主任
     */
    @ExcelProperty(value = {"基础信息","班主任"})
    private String studentClassAdvisor;


    // 变更板块

    /**
     * 变更类别
     */
    @ExcelProperty(value = {"基础信息","变更类别"})
    private String changeCategory;
    /**
     * 变更理由
     */
    @ExcelProperty(value = {"基础信息","变更理由"})
    private String changeReason;
    /**
     * 备注1
     */
    @ExcelProperty(value = {"基础信息","备注1"})
    private String note1;
    /**
     * 学历组合
     */
    @ExcelProperty(value = {"基础信息","学历组合"})
    private String educationMethodCombination;

    // 一级表头：本科学历信息
    // 本科学历信息
    /**
     * 科大平台注册号
     */
    @ExcelProperty(value = {"本科学历信息","科大平台注册号"})
    private String bachelorId;
    /**
     * 统一学号(准考证号)
     */
    @ExcelProperty(value = {"本科学历信息","统一学号"})
    private String bachelorAdmissionId;
    /**
     * 本科学历类型（教学方式代码）
     */
    @ExcelProperty(value = {"本科学历信息","本科学历类型"})
    private String bachelorEducationMethod;
    /**
     * 学历专业（本科专业）
     */
    @ExcelProperty(value = {"本科学历信息","学历专业"})
    private String bachelorMajor;
    /**
     * 本科注册时间(年+季)
     */
    @ExcelProperty(value = {"本科学历信息","本科注册时间"})
    private String bachelorRegistryTime;
    /**
     * 本科学历状态（在校状态）
     */
    @ExcelProperty(value = {"本科学历信息","本科学历状态"})
    private String bachelorEducationState;
    /**
     * 本科毕业证编号
     */
    @ExcelProperty(value = {"本科学历信息","本科毕业证编号"})
    private String bachelorGraduationId;
    /**
     * 本科毕业时间
     */
    @ExcelProperty(value = {"本科学历信息","本科毕业时间"})
    private String bachelorGraducationTime;


    // 一级表头：专科学历信息
    // 专科学历信息
    /**
     * 专科科大平台注册号
     */
    @ExcelProperty(value = {"专科学历信息","科大平台注册号"})
    private String trainingId;
    /**
     * 统一学号(准考证号)
     */
    @ExcelProperty(value = {"专科学历信息","专科学号(专科准考证号）"})
    private String trainingAdmissionId;
    /**
     * 专科学历类型（教学方式代码）
     */
    @ExcelProperty(value = {"专科学历信息","专科学历类型"})
    private String trainingEducationMethod;
    /**
     * 学历专业（专科专业）
     */
    @ExcelProperty(value = {"专科学历信息","专科专业"})
    private String trainingMajor;
    /**
     * 专科注册时间(年+季)
     */
    @ExcelProperty(value = {"专科学历信息","专科注册时间"})
    private String trainingRegistryTime;
    /**
     * 专科学历状态（在校状态）
     */
    @ExcelProperty(value = {"专科学历信息","专科学历状态"})
    private String trainingEducationState;
    /**
     * 专科毕业证编号
     */
    @ExcelProperty(value = {"专科学历信息","专科毕业证编号"})
    private String trainingGraduationId;
    /**
     * 专科毕业时间
     */
    @ExcelProperty(value = {"专科学历信息","专科毕业时间"})
    private String trainingGraducationTime;

}
